package Tokens;

import java.util.ArrayList;
import java.util.Collection;

/**
 * Classe responsável pelo token das Palavras Reservadas.
 * @author Danilo
 */
public class PalavrasReservadas extends Token {

    private final String tipo ;

    public PalavrasReservadas(String cadeia, Integer linha, Integer coluna) {
        super(cadeia, linha, coluna);
        this.tipo =  "Palavra Reservada";
    }

    /**
     * Métedo responsável por carregar a lista de palavra reservada.
     *
     * @return arrayList
     */
    public static Collection<String> carregaPalavrasReservadas() {
        Collection<String> palavrasReservadas = new ArrayList<>();
        palavrasReservadas.add("program");
        palavrasReservadas.add("begin");
        palavrasReservadas.add("end");
        palavrasReservadas.add("real");
        palavrasReservadas.add("integer");
        palavrasReservadas.add("write");
        palavrasReservadas.add("while");
        palavrasReservadas.add("if");
        palavrasReservadas.add("var");
        return palavrasReservadas;
    }

    public String getTipo() {
        return tipo;
    }
    
    @Override
    public String toString() {
        return "cadeia = '" + cadeia + "', Token = '" + tipo + "', linha = '" + linha + "', coluna = '" + coluna + "'";
    }
}
